In a communication system, TCP/IP protocol is often used for communication between devices or systems, so the devices applying TCP/IP protocol must be assigned IP addresses correspondingly.
The simplest method for assigning IP addresses to devices is assigning them by maintainers. Nevertheless, this will increase complexity of device maintenance.
The technology of automatically obtaining IP address can make device maintenance simple. The protocols usually used in this technology include: Reverse Address Resolution Protocol (RARP), Bootstrap Protocol (BOOTP) and Dynamic Host Configuration Protocol (DHCP).
The common feature of these three protocols is that a device requesting an IP address sends a request containing network interface hardware address (such as Ethernet address) information of itself to a server, then the server assigns an IP address to the device based on the hardware address. Nevertheless, RARP can only make a device obtain an IP address, the request for an IP address cannot be forwarded by a router, so a server must be set in each network segment, which limits the application range of this protocol. BOOTP can make a device obtain not only IP address information, but also additional information, such as boot file name, etc. Besides, BOOTP request packets can be forwarded by a router (BOOTP relay proxy), so this protocol can be used in a wide range. DHCP is an expansion of BOOTP with the ability of assigning reusable IP addresses automatically.
For standard RARP, BOOTP and DHCP, it is required that a device requesting an IP address has a unique hardware address of network interface for identifying itself. A device which communicates with other devices through Ethernet takes Ethernet address as it unique identifier. Nevertheless, for devices applying such as IP Over ATM (IPOA) protocol for communication, assigning a hardware address to a device is as complex as assigning an IP address to the device. In other word, if it is not difficult to assign a unique hardware address to the device, then it is not difficult to assign an IP address to the device, that is, it is no necessary for the device to obtain IP address automatically.